1. Field of the Invention
The present invention relates to multipoint data communication receiver which is used on a shared communication medium with a plurality of transceivers or transmitters.
2. Prior Art
With respect to prior art relating to interference detection, it is known to have a collection of transceivers, each of which is attempting to transmit over a shared communication channel. When two separate source transmissions overlap in part or completely they will interfere and destroy each other. When the communication channel is characterized with a propagation delay between any source and destination nodes as being relatively small with respect to that of the transmission time, then it is more efficient to sense if the channel is idle before attempting transmission. The transceiver should be able to listen to the channel through the use of a carrier detect signal. If the carrier signal is heard then the transmitter will realize that the channel is in use and will defer or postpone its transmission until the channel is sensed to be idle.
This property of carrier deference, does not guarantee channel acquisition. Two or more transceivers may detect the channel idle and attempt transmission. However, the detection of carrier from another transmitter may take the end-to-end propagation delay of the medium. Therefore, interference from multiple simultaneous transmissions may occur. The user transmitting determines that its previous transmission was unsuccessful due to the absence of a positive acknowledgement from the receiving node. It then reschedules its transmission of data.
Consider the case where the transceiver can listen to its own transmission and determine when interference exists. When interference is detected it could then truncate transmission and reduce the collision period. If the smallest transmitted element (bit) on which interference can be detected is less than the propagation time "Td" over the medium then the channel is guaranteed to be captured after this time "Td". However, the transceiver can only be assured of medium capture after twice the propagation delay which is the round trip time to sense collision. Once a user transmission has been in progress for the end-to-end propagation medium time, all transmitters will be deferred and the transmission will complete without collision.
Prior systems have performed this collision detection by the exclusive OR function on the modulated signal of the transmitter to that of the received signal by providing a delay substantially equal to the signal propagation delay through the transmitting and receive buffer circuits. This approach is described in U.S. Pat. No. 4,063,220 issued Dec. 13, 1977 entitled "Multipoint Data Communication System With Collision Detection". Such an apparatus for detecting collision on the modulated signal is very suceptible to phase-shifts and noise on the medium. This technique would probably not be suitable for a noisy environment. An alternative apparatus is required which would protect the data from noise but allow interference induced by multiple transmissions (similar signals with different phase) to be detected during transmission on the shared channel.
Modulation or encoding is the process by which digital data bits or analog signal information is transmitted over a communication channel. The use of code redundancy will increase the information certainty of the receiving system. Codes have most often been employed to satisfy the demands of the communication system. Codes are used to a great advantage in spread spectrum systems. A spread spectrum system is one that employs a great deal more bandwidth in transmitting its information than would normally be required. Error detecting and correcting codes for instance are often employed in spread spectrum systems on the data channel to protect the information from interference induced errors. Performing a correlation process in a spread spectrum receiver acts to overcome interference and thus to optimize the decoder. Spread spectrum systems of the direct sequence type are very similar to pulse code modulation (PCM) systems except the usual PCM codes are replaced by very long code sequences. There are various PCM codes which are described for example in "Digital Computer Technology and Design" Vol. II, Pages 12.26-12.27 by W. H. Ware, John Wiley and Sons, 1963. There are other reasons for encoding other than to protect the data sent.
The essential function of a receiver is to classify the infinity of possible received signals into a finite number of information messages. A decoder classifies a demodulator output sequence into a number of classes corresponding to the possible transmitted input messages. When the decoder attempts to correct the noise induced errors made by the demodulator this is usually interpreted as an error correction process. Error correction is possible when the received sequence of channel symbols contains redundancy. This is because only a fraction of the possible received sequence correspond to messages and the remainder indicate that certain types of errors have occurred. Further discussion of error correction is in "Principles of Data Communication" by R. W. Lucky, J. Salc and E. J. Weldon, Jr., McGraw-Hill, 1968, Chapter 10. Errors can also be handled in an entirely different manner. The receiver may decode a sequence only if it corresponds to an acceptable message sequence. Otherwise it will notify the transmitter that errors have occurred. This technique is generally considered to error detection.
With respect to the prior art of coding, error detection can be accomplished using code redundancy. If the set of valid codes is defined by a distance function then the degree of error detection can be defined. The "minimum distance" of a code is the smallest number of bits that any two coded words differ. A code is said to be error-detecting if its minimum distance is two or more. If the coding distance is three then any single error will change a valid code word into an invalid one which is a distance one away from the original coded word and a distance two from any other valid code word. Hence, in a code with minimum distance of three any single error is correctable or any double error detectable. Likewise, a code whose minimum distance is four may be used for either single error correction and double error detection or triple error detection.
Coding of information in the prior art has often been done for detecting and correcting errors. The use of long code sequences in a spread spectrum system has been to overcome interference or frequency jamming. It would be desirable to have an apparatus which employes coding such that it is not susceptible to noise, yet is capable of detecting interference from similar spectrum signals like its own. These are some of the problems this invention overcomes.